Remote gaming is a mechanism by which users of a client device interact with a game that is running at a remote location. Client devices are allocated resources at a remote location through an internet service provider (ISP) for servicing remote gameplay. An ISP includes several data centers for servicing various client devices utilizing that ISP. Each data center may include multiple blades (e.g., individual processing entity of the data center), each blade including various resources (e.g., CPU and GPU) for servicing the client.
Conventionally, an ISP manages resources for its associated client devices by determining an appropriate data center and blade within its own resource pool for servicing each of those client devices. Because an ISP can only manage its own resource pool and additionally because an ISP can only allocate resources from its own resource pool several non-optimal situations may occur.
In some circumstances, the resource pool may be utilized at maximum capacity such that additional users of client devices may need to wait for resources to free up prior to being serviced. In some other circumstances, the optimal set of resources for a given user of a client device may be currently occupied by another user, such that the requesting user of the client device is assigned to a sub-optimal set of resources. In such circumstances, users are not experiencing an optimal remote gameplay experience as the user is experiencing a wait time prior to gameplay or the user is being serviced by a suboptimal set of resources.
In certain other circumstances, the resource pool may outnumber user demand. In such circumstances, the unused resources are being underutilized (e.g., remain idle) resulting in inefficiency.